Benvenuto nella Lezione 7, in cui presentiamo Apprendimento Trasferito. Questa tecnica consiste nel riutilizzare un modello di apprendimento profondo già addestrato su un vasto dataset generico (come ImageNet) e adattarlo per risolvere un compito nuovo e specifico (come la nostra sfida FoodVision). È fondamentale per ottenere risultati all'avanguardia in modo efficiente, soprattutto quando i dataset etichettati sono limitati.
1. Il Potere dei Pesi Pre-addestrati
I reti neurali profonde imparano le caratteristiche in modo gerarchico. I livelli inferiori imparano concetti fondamentali (bordi, angoli, texture), mentre i livelli più profondi combinano queste informazioni in concetti complessi (occhi, ruote, oggetti specifici). L'idea chiave è che le caratteristiche fondamentali apprese all'inizio sono universalmente applicabili applicabili in gran parte dei domini visivi.
Componenti dell'Apprendimento Trasferito
- Compito di Origine: Addestramento su 14 milioni di immagini e 1000 categorie (ad esempio, ImageNet).
- Compito Obiettivo: Adattamento dei pesi per classificare un dataset molto più piccolo (ad esempio, le nostre categorie specifiche FoodVision).
- Componente Sfruttato: La grande maggioranza dei parametri della rete — gli strati di estrazione delle caratteristiche — viene riutilizzata direttamente.
Run code to inspect active tensors
The Input Feature size must match the output of the frozen base layer.
Size: 512.
The output size of 512 is the input, and the class count 7 is the output.
Code:
new_layer = torch.nn.Linear(512, 7)The Output Feature size must match the number of target classes.
Size: 7.